package com.aretias.jkholdings.repository;

import java.util.List;

import com.aretias.jkholdings.model.Board;
import com.aretias.jkholdings.model.BoardParam;
import com.aretias.jkholdings.model.BoardReply;
import com.aretias.jkholdings.model.BoardReplyParam;

public interface BoardRepository {

	/**
	 * @desc 
	 * @return List<Board> �Խù� ����ũ 
	 */
	public List<Board> selectBoardList(BoardParam param);
	
	/**
	 * @desc �Խù��� �ۼ��Ѵ�.
	 * @return void
	 */
	public int insertBoard(BoardParam param);
	
	/**
	 * @desc �Խù� ������ �����Ѵ�. 
	 * @return void
	 */
	public void updateBoard(BoardParam param);
	
	/**
	 * @desc �Խù� ������ �����´�.
	 * @return Board �Խù� ������
	 */
	public Board selectBoard(BoardParam param);
	
	/**
	 * @desc
	 * @param param
	 * @return
	 */
	public List<BoardReply> selectBoardReplyList(BoardReplyParam param);

	/**
	 * @desc
	 * @param param
	 * @return
	 */
	public BoardReply selectBoardReply(BoardReplyParam param);

	/**
	 * @desc
	 * @param param
	 * @return
	 */
	public void insertBoardReply(BoardReplyParam param);

	/**
	 * @desc
	 * @param param
	 * @return
	 */
	public void updateBoardReply(BoardReplyParam param);

	/**
	 * @desc
	 * @param param
	 * @return
	 */
	public void deleteBoard(BoardParam param);

	/**
	 * @desc
	 * @param param
	 * @return
	 */
	public void deleteBoardReply(BoardReplyParam param);

	/**
	 * @desc
	 * @param param
	 * @return
	 */
	int selectBoardListCount(BoardParam param);
	
	/**
	 * @desc
	 * @param param
	 * @return
	 */
	int selectBoardReplyListCount(BoardReplyParam param);
}
